The present invention relates to a packet data transfer apparatus for radio packet communication, and especially to a TCP segment size controlling method, and radio packet system control which depends on user data occurrence condition.
In FIG. 5, a protocol stack between two communication terminals that conduct a TCP data transfer on radio packet communication is shown. Here, it is assumed that each layer is taking a share in a function in accordance with an OSI reference model.
A radio link is provided between a packet data transfer apparatus 10 and a radio base station 20, and provides radio packet communication by a layer 2 and less than or equal to that. A wire link is provided between the radio base station 20 and a gateway device 30, and the layer 2 and less than or equal to that have unique protocols within a net.
A wire link is provided between the gateway device 30 and a packet data transfer apparatus 40, and the layer 2 and less than or equal to that have other protocols within a net. A case can be considered, in which an ethernet is used here.
It is assumed that, in a layer 3, an IP is used between the packet data transfer apparatus 10 and the packet data transfer apparatus 40. It is assumed that, in a layer 4, a TCP is used between the packet data transfer apparatus 10 and the packet data transfer apparatus 40.
A user data to be transferred, which occurs in a user application on the packet data transfer apparatus 10 is shaped into a TCP segment in the TCP (layer 4), is shaped into an IP packet in the IP (layer 3), to which an IP header is added, and is converted into a frame in the layer 2, which is unique to radio packet communication, and thereafter, is sent by means of radio in a layer 1.
The radio frame which was sent by means of radio from the packet data transfer apparatus 10 is received by the radio base station 20, and is transferred to the gateway device 30 by using a unique transfer method in a net protocol.
In the gateway device 30, the IP packet is reconstructed, and the IP packet is transferred through a net such as an ethernet, and is transferred to the packet data transfer apparatus 40.
In the packet data transfer apparatus 40, a user data is taken out from the reconstructed TCP segment, and is delivered to a user application on the packet data transfer apparatus 40.
In FIG. 6, a block diagram of a packet data transfer apparatus for conducting a TCP data transfer at a radio packet by means of a prior art is shown.
A TCP segment generating section 402 receives a transmitted user data and generates a TCP segment having a size of which an upper limit is a maximum segment size, and delivers it to an IP packet generating section 302. The IP packet generating section 302 adds an IP header to the TCP segment which was received from the TCP segment generating section 402, and generates an IP packet, and delivers it to a radio packet generating/transmitting section 202.
The radio packet generating/transmitting section 202 reconstructs the IP packet into a unique frame in radio packet communication, and delivers it to a radio transmission and reception processing section 102.
The radio transmission and reception processing section 102 conducts radio transmission of the transmitted radio frame from the radio packet generating/transmitting section 202 through a transmission and reception antenna 101. Also, the radio transmission and reception processing section 102 takes out a received radio frame from the transmission and reception antenna 101, and delivers it to a radio packet receiving section 203.
The radio packet receiving section 203 reconstructs a radio packet from the radio frame, and delivers it to an IP packet receiving section 303.
The IP packet receiving section 303 reconstructs the radio packet which was received from the radio packet receiving section 203 into an IP packet, and delivers it to a TCP segment receiving section 403.
The TCP segment receiving section 403 reconstructs a TCP segment from the IP packet, and outputs a received user data.
A radio packet transmission and reception controlling section 201 controls the radio packet generating/transmitting section 202 and the radio packet receiving section 203 based on information from the radio transmission and reception processing section 102. Also, the radio packet transmission and reception controlling section 201 conducts control in accordance with a control data addressed to the radio packet transmission and reception controlling section 201, which was received from the radio base station 20, and at the same time, transmits the control data to a radio packet transmission and reception controlling section (not shown) of the radio base station 20.
The transmitted control data from the radio packet transmission and reception controlling section 201 is transmitted and processed from the radio packet transmission and reception controlling section 201 through the radio packet generating/transmitting section 202 like the user data.
In the same manner, a received control data from a radio packet transmission and reception controlling section (not shown) of the radio base station 20 is received and processed in the radio transmission and reception processing section 102 like the user data, and thereafter, is delivered to the radio packet transmission and reception controlling section 201 through the radio packet receiving section 203.
An IP packet transmission and reception controlling section 301 controls the IP packet generating section 302 and the IP packet receiving section 303. Also, the IP packet transmission and reception controlling section 301 notifies a TCP segment transmission and reception controlling section 401 of a maximum size (MTU; Maximum Transport Unit) of an IP packet during initial setting of a data transfer.
The TCP segment transmission and reception controlling section 401 controls the TCP segment generating section 402 and the TCP packet receiving section 403. Also, during a data transfer, the TCP segment transmission and reception-controlling section 401 conducts transmission and reception of a control data with a TCP segment transmission and reception controlling section (not shown) that is other party to communicate with, and controls a confirmation response, resending, transmission and reception rate and so forth of a TCP segment. Further, the TCP segment transmission and reception controlling section 401 exchanges a data with a control interface 404 for transferring a TCP data to a user application.
In FIG. 7, a flowchart of maximum segment size control of a TCP by means of a prior art is shown.
First, after initialization, a maximum segment size (MSS; Maximum Segment Size) of a TCP is set only one time when a TCP connection is established (A-1). This is calculated based on the MTU which was notified from the IP packet transmission and reception controlling section 301.
Next, in case that a transmitted user data exists (A-2), a segment is generated (A-3), and segment sending processing is conducted (A-4).
In FIG. 8, a data flow between layers until a user data is divided and processed into a size to be transferred by means of a radio frame is shown.
A user data is delivered to the radio packet generating/sending section 202 under condition that a TCP header is added thereto in a TCP layer and an IP header is added thereto in an IP layer. In the radio packet generating/sending section 202, a unique overhead (shown as xe2x80x9cOHxe2x80x9d in FIG. 8) in this layer is added thereto, and it is divided into radio frame unit.
Here, in a radio frame 1, a radio packet to be transferred is being divided into just n. Although, in a radio frame 2, the radio packet to be transferred is being divided into three, since a data in a high position, which fills up a third radio frame, does not exist, padding of a useless data (a zero value and so forth) is conducted.
In FIG. 9, a time line of a TCP data transfer on radio packet communication by means of a prior art is shown. Between the radio base station 20 and the gateway device 30, and between the gateway device 30 and the packet data transfer apparatus 40, condition in which a data transfer can be conducted by means of respective unique protocols within a net is established.
For the radio link between the packet data transfer apparatus 10 and the radio base station 20, a low-speed radio link is used when a data to be transferred is comparatively less, and a high-speed radio link is used when a data to be transferred is comparatively more. With regard to the switch of both high-speed and low-speed, the radio base station 20 monitors throughput of a data transfer, and when it is determined that the throughput is large, switching to the high-speed link is conducted, and when it is determined that the throughput is small, switching to the low-speed link is conducted. When there is no user data to be transferred, condition of the low-speed radio link is established.
Here, an example in which a demand for a transfer of a user data occurs in the packet data transfer apparatus 10 is shown.
A connection of a TCP is established under condition of a low-speed radio link. Since a TCP segment for establishment of the connection of the TCP is small, it is determined as it is that the throughput is small.
If, at time when a data transfer demand occurs and a time period Ta has passed, the radio base station 20 determines that the throughput is large, the radio link is set to a high-speed link again. A subsequent data transfer is conducted over a time period Tb in the high-speed radio link, and a cut of the TCP connection is conducted, and a transfer of the user data is finished. After the transfer of the user data is finished and a time period Tc has passed, the radio base station 20 determines that the throughput is small, and the radio link is set to a low-speed radio link again.
A first problem of the prior art is that the maximum segment size is consistently fixed during communication. The reason thereof is that the maximum segment size is set only at the initial setting of an operation.
A second problem is that control of the TCP, which is connected with an operation of layers in a subordinate position, cannot be conducted. Also, control of the layers in a subordinate position, which depends on condition of the occurrence of user data of the TCP, cannot be conducted. The reason thereof is that an interface for an information exchange between the layers in a subordinate position and the TCP does not exist.
The present invention is made to solve the above-mentioned problems.
Moreover, the objective of the present invention is to improve the throughput of a TCP data transfer in radio packet communication. Also, the objective is to realize more efficient utilization of radio resources.
In the present invention, in order to solve the above-described tasks, as first means, an interface for exchanging mutual operation information between the layers in a subordinate position and the TCP is prepared. As second means, when a change occurs in transfer condition of the layers in a subordinate position, in accordance with that, the maximum segment size is also reset to most suitable one in time. As third means, the maximum segment size in a radio section can be notified to a TCP that is other party to communicate with in the middle of a data transfer. As fourth means, the setting of transfer condition of the layers in a subordinate position can be changed dependent on condition of the occurrence of a user data of the TCP.
By means of the above-described first means, the operations shown in relation to the second and fourth means are realized. Thereby, cooperation of the operations of the TCP and the layers in a subordinate position can be realized.
By means of the second means, dynamic TCP segment size control in which uselessness does not occur for a frame size of the layers in a subordinate position is conducted. Accordingly, since a more efficient transfer of a user data can be realized, the throughput is improved.
By means of the third means, also with respect to a data transfer from the TCP that is other party to communicate with, a data transfer is conducted, in which the most sutable maximum segment size control is conducted in a radio section. Accordingly, since a more efficient transfer of a user data can be realized, the throughput is improved.
By means of the fourth means, transfer condition control of the layers in a subordinate position, which is appropriate for a frequency of the occurrence of a user data of a TCP, is conducted. Accordingly, since a more efficient transfer of the user data can be realized, the throughput is improved, and at the same time, an effective allocation of radio resources can be realized.